Substantially Synchronous Deposit of Messages into Multiple Communication Modalities

ABSTRACT

The present disclosure provides systems and methods for storing messages using multiple communication modalities, in which a first communication is received from a first communication system. One embodiment of a method includes receiving a message in a first protocol and converting the message from the first protocol to the second protocol. Some embodiments include storing the converted message in a temporary mailbox created for storing messages of the second protocol, sending the converted message to a storage component associated with the second protocol, and destroying the temporary mailbox.

CROSS REFERENCE

This application is a continuation of U.S. patent application Ser. No.10/747,823, filed Dec. 29, 2003, which is incorporated herein byreference as if set forth in its entirety.

FIELD OF THE INVENTION

The present disclosure relates generally to communications and, moreparticularly, to communications in multiple communication modalities.

BACKGROUND

Recently, email and instant messaging (IM) have become commonplace indigital communications. Additionally, cellular telephones have alsobecome ubiquitous in society. Thus, many people carry multiple devices,such as cellular telephones, email-enabled personal digital assistants(PDAs), etc. in order to keep abreast of all of their incomingcommunications.

In an effort to integrate these various communication systems (e.g.,public switched telephone network (PSTN) systems, cellular telephonesystems, email systems, etc.), various vendors have created “unifiedmessaging systems.” Those unified messaging systems provide acentralized repository, which stores messages such as, for example,telephone calls, email messages, etc. The centralized storage ofmessages provides users access to various communication modalities(e.g., email, voicemail, etc.) through a single user interface.

Unfortunately, the integration of the various communication systemscomes at a significant cost to the vendors because, typically, theintegration requires vendors to modify the various individualcommunication systems. For example, in order to create a unifiedmessaging system that is compatible with both email and telephony, boththe underlying architectures of the telephone system and email systemare modified as the unified messaging platform is constructed. Themodification of the underlying component systems results in a complexarchitecture that is susceptible to communication errors.

Thus, a heretofore-unaddressed need exists in the industry to addressthe aforementioned deficiencies and inadequacies.

SUMMARY

The present disclosure provides systems and methods for storing messagesusing multiple communication modalities.

Briefly described, in some embodiments, among others, a firstcommunication is received from a first communication system. The firstcommunication system is configured to communicate using a first standardcommunication protocol. The first communication is converted to a secondcommunication, which is compatible with a second standard communicationprotocol. The first communication and second communication areseparately stored. In some embodiments, among others, the firstcommunication and the second communication are stored substantiallysynchronously at two separate communication systems.

Other systems, devices, methods, features, and advantages will be orbecome apparent to one with skill in the art upon examination of thefollowing drawings and detailed description. It is intended that allsuch additional systems, methods, features, and advantages be includedwithin this description.

BRIEF DESCRIPTION OF THE DRAWINGS

Many aspects of the disclosure can be better understood with referenceto the following drawings. The components in the drawings are notnecessarily to scale, emphasis instead being placed upon clearlyillustrating the principles of the present disclosure. Moreover, in thedrawings, like reference numerals designate corresponding partsthroughout the several views.

FIG. 1 is a block diagram showing component architecture for a computerthat has a callee client, as shown in FIG. 2.

FIG. 2 is a block diagram showing various system components associatedwith multiple communication modalities.

FIG. 3 is a flowchart showing initial steps of an embodiment in aprocess for setting up a user interface at the computer of FIG. 1.

FIG. 4 is a flowchart showing an embodiment of a process continuing fromFIG. 3.

FIG. 5 is a flowchart showing an embodiment of a process continuing fromFIG. 4.

FIG. 6 is a flowchart showing an embodiment of a process continuing fromFIG. 5.

FIG. 7 is a flowchart showing an embodiment of a process continuing fromFIG. 6.

FIG. 8 is a diagram showing an embodiment of a user interface that canbe presented to a user during the setup process of FIGS. 3 through 7.

FIG. 9 is a diagram showing an embodiment of another user interface thatcan be presented to a user during the setup process of FIGS. 3 through7.

FIG. 10 is a diagram showing an embodiment of another user interfacethat can be presented to a user during the setup process of FIGS. 3through 7.

FIG. 11 is a diagram showing an embodiment of another user interfacethat can be presented to a user during the setup process of FIGS. 3through 7.

FIG. 12 is a diagram showing an embodiment of another user interfacethat can be presented to a user during the setup process of FIGS. 3through 7.

FIG. 13 is a diagram showing an embodiment of another user interfacethat can be presented to a user during the setup process of FIGS. 3through 7.

FIG. 14 is a diagram showing an embodiment of another user interfacethat can be presented to a user during the setup process of FIGS. 3through 7.

FIG. 15 is a diagram showing an embodiment of another user interfacethat can be presented to a user during the setup process of FIGS. 3through 7.

FIG. 16 is a data flow diagram showing one embodiment, among others, ofan initial stage of the flow of data between the various systemcomponents of FIG. 2 for Internet call waiting (ICW).

FIG. 17 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 16.

FIG. 18 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 17.

FIG. 19 is a data flow diagram showing one embodiment, among others, ofthe flow of data between the various system components of FIG. 2 when acallee places a caller on hold, as shown in FIG. 18.

FIG. 20 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 18 or 19.

FIG. 21 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 20.

FIG. 22 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 21.

FIG. 23 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 22.

FIG. 24 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 23.

FIG. 25 is a data flow diagram showing one embodiment, among others, ofthe flow of data between the various system components of FIG. 2 when acallee forwards an incoming call from a caller to another telephonenumber, as shown in FIG. 18.

FIG. 26 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 20.

FIG. 27 is a data flow diagram showing another embodiment, among others,of the flow of data between the various system components of FIG. 2 whena callee answers an incoming call from a caller on hold, as shown inFIGS. 18 and 19.

FIG. 28 is a data flow diagram showing an embodiment of a processcontinuing from FIG. 27

FIG. 29 is a diagram showing an embodiment of a user interface that canbe presented to a user during the process shown in FIGS. 18 through 28.

FIG. 30 is a diagram showing an embodiment of another user interfacethat can be presented to a user during the process shown in FIGS. 18through 28.

FIG. 31 is a diagram showing an embodiment of another user interfacethat can be presented to a user during the process shown in FIGS. 18through 28.

DETAILED DESCRIPTION OF THE EMBODIMENTS

Reference is now made in detail to the description of the embodiments asillustrated in the drawings. While several embodiments are described inconnection with these drawings, there is no intent to limit thedisclosure to the embodiment or embodiments disclosed herein. On thecontrary, the intent is to cover all alternatives, modifications, andequivalents.

Unlike many known systems and methods associated with unified messaging,the approaches presented herein provide systems and methods forintegrating different communication modalities without substantiallymodifying existing communication systems. In some embodiments, amongothers, the integration is accomplished through a messaging server thatprovides the interface between the various communication modalities.Thus, rather than modifying the operation of the different modalitiesand constructing a new integrated system, the messaging server convertscommunications from one communication modality to another, therebyproviding a simpler approach to integrating different communicationmodalities. As non-limiting examples, the communication modalities mayinclude public switched telephone network (PSTN) telephony, email,instant messaging (IM), Internet call waiting (ICW), satellitetelephony, cellular telephony, legacy voicemail, and many more.

Thus, in some embodiments, among others, legacy voicemail systems can beintegrated with Internet-based communication systems without significantmodification to either the legacy voicemail systems or theInternet-based communication systems. For those embodiments, themessaging server is configured to receive Internet-based communicationsand convert the Internet-based communications intolegacy-voicemail-compatible communications. Similarly, the messagingserver, for those embodiments, is configured to convert legacy voicemailmessages and commands into Internet-compatible signals.

In other embodiments, among others, Internet call waiting (ICW) systemscan be integrated with legacy voicemail systems. The integration betweenlegacy voicemail and ICW permits the ICW systems to deposit voicemailmessages into the legacy voicemail systems and, also, to extractmessages from the legacy voicemail systems.

In yet other embodiments, among others, the ICW systems can beconfigured to include digital voicemail stores that store voicemailmessages that are portable over the Internet. The integration of thelegacy voicemail systems with the digital voicemail stores permitssynchronous storage and extraction of voicemail messages from both thelegacy voicemail systems and Internet-based systems. Thus, a user canavoid the inconvenience of checking for the same message at multipleplatforms.

While specific communication modalities are used to illustrate thesystems and methods in the several embodiments described below, itshould be appreciated that the specific embodiments are provided forillustrative purposes, and are not intended to be limiting. For example,while legacy voicemail systems and ICW systems are shown in great detailwith reference to FIGS. 1 through 31, it should be appreciated that thelegacy voicemail system is an example of one communication system thatis configured to communicate using a specified protocol. Since legacyvoicemail systems have existed since 1979, and are known to those havingskill in the art as evidenced by U.S. Pat. No. 4,371,752, the originalvoicemail patent issued to Matthews et al., only cursory descriptions ofvoicemail are provided when relevant.

Since protocols for accessing voicemail messages from legacy voicemailsystems are relatively well-established, it should be appreciated thatthe protocol associated with legacy voicemail is an example of astandard communication protocol. Likewise, it should be appreciated thatthe ICW system is an example of another communication system that isconfigured to communicate using a different specified protocol. In thatregard, the established protocol associated with ICW is an example ofanother standard communication protocol. Specifically, with reference toICW, the protocol may include both Internet-based protocols andPSTN-telephony-based protocols, since ICW has both an Internet componentand a PSTN component.

FIG. 1 is a block diagram showing component architecture for a computer,which can be one embodiment, among others, of a callee client 202 thatinterfaces a user (not shown) to multiple communication modalities. Asshown in FIG. 1, the callee client 202 includes a processor 105 andmemory 110, which are both electrically coupled to a local interface (orbus) 125. The callee client 202 of FIG. 1 also includes a networkinterface 145 coupled to the bus 125. The network interface 145 permitsthe callee client 202 to communicate across a network (not shown inFIG. 1) with other network devices (not shown in FIG. 1) that may becommunicatively coupled to the network.

In some embodiments, the callee client 202 can also include input/output(I/O) devices 140 such as a keyboard, mouse, monitor, or other known I/Odevices. Additionally, the callee client 202 can include a local storagedevice 135 such as, for example, a hard disk. Moreover, the calleeclient 202 can also include expansion slots 130 to accommodate, forexample, plug-and-play devices or peripheral component interconnect(PCI) devices. Since I/O devices 140, local storage devices 135, andexpansion slots 130 are known to those having skill in the art, furtherdiscussion of these components is omitted here. Additionally, since theinteraction among these components within a computer are known to thoseof skill in the art, further discussion of the internal computerarchitecture is omitted here.

In one embodiment, among others, the memory 110 includes the operatingsystem 115 and an Internet call waiting (ICW) client application 120.The ICW client application 120 enables the callee client 202 to handleincoming telephone calls to a particular public switched telephonenetwork (PSTN) line when a modem a user is accessing a dial-up Internetservice over the same PSTN line. Conventional ICW applications are knownto those having skill in the art, as evidenced by U.S. Pat. No.5,805,587, having the title “Call Notification Feature for a TelephoneLine Connected to the Internet” by Norris et al., which is incorporatedherein by reference in its entirety. Hence further discussion ofconventional ICW applications is omitted here.

The ICW client application 120 of FIG. 1, however, unlike conventionalICW applications, provides a setup “wizard” that streamlines the setupprocess with minimal user input. An example embodiment, among others, ofthe setup wizard are shown with reference to FIGS. 3 through 15 below.

Once a user has set up the ICW application 120 and logged in at thecallee client 202 using a dial-up connection over a PSTN telephone line,the ICW application 120 provides various alerts and/or notifications tothe user, thereby apprising the user of incoming telephone calls overthe same PSTN telephone line. As described below with reference to FIGS.16 through 31, the user can provide one or more responses to the alertsand/or notifications, which, in turn, results in a different handling ofthe incoming telephone call. Unlike standard systems, however, thehandling of the calls, in some embodiments, involves multiplecommunication modalities with different communication protocols.Specifically, multiple communication modalities are accessed withoutsubstantially altering the communication protocols for thosecommunication modalities. In a preferred embodiment, among others, thecommunication protocols and communication systems are left undisturbed,thereby preserving the stability of the underlying communication systemsand the robustness of the communication protocols. Rather than alteringknown systems and protocols, an additional translator interfaces theundisturbed communication systems and translates between the knownprotocols.

As described below, in some embodiments, the translator is implementedas a messaging server that is communicatively coupled to the variouscommunication systems. The messaging server is configured to receivedata and/or commands using one protocol for one communication system andconvert the data/commands into another protocol for anothercommunication system. By having such a messaging server, multiplecommunication modalities can be integrated in a modular fashion. Thus,in the future, if additional communication modalities are developed,those communication modalities can be seamlessly integrated with theexisting communication modalities by reconfiguring the messaging serverto accommodate the new communication modality. In other words, ratherthan reconstructing an entire communication system, as in some unifiedmessaging systems, the different communication modalities can beintegrated by modifying the messaging server. An embodiment of a systemhaving a messaging server is shown with reference to FIG. 2, whileembodiments of the operation of the messaging server are shown withreference to FIGS. 16 through 31.

FIG. 2 is a block diagram showing various system components associatedwith multiple communication modalities. As shown in FIG. 2, oneembodiment, among others, includes a public switched telephone network(PSTN) 204, an advanced intelligent network (AIN) intranet 220, amessaging network intranet 228, and the Internet 216, which are networksthat are familiar to those having skill in the art. As known in the art,the AIN intranet 220 can include an Internet gateway 222, whichfacilitates communications between the AIN intranet 220 and variousInternet-compatible components. The Internet gateway 222 is alsocommunicatively coupled to the SCP 224, thereby effectively providing acommunication pathway between the SCP 224 and various Internet-basedcommunication systems.

As further known to those having skill in the art, the PSTN 204 caninclude a caller central office (CO) 208 and a callee CO 206, which arecommunicatively coupled to a caller telephone 210 and the callee client202, respectively. The callee CO 206 and the caller CO 208 arecommunicatively coupled to each other, thereby providing a communicationconnection between a caller at the caller telephone 210 and a callee atthe callee client 202. Since the operating protocols of the PSTN 204 areknown in the art, only a truncated discussion of the PSTN 204 componentsis provided when appropriate.

In addition to these (and possibly other) networks, the embodiment ofFIG. 2 includes various components such as, for example, a lightweightdirectory access protocol (LDAP) database 232 and a legacy voicemailrepository 230 (also referred to as a legacy voicemail mailbox), whichare both communicatively coupled to the messaging network intranet 228.The legacy voicemail repository 230, in some embodiments, is a componentpart of an entire legacy voicemail system. Since LDAP databases 232 andlegacy voicemail systems are known in the art, only a truncateddiscussion of these components is provided when appropriate.

The callee CO 206 and the caller CO 208 are communicatively coupled toan SS7 network 212, which uses a signaling system 7 (SS7) telephonyprotocol, as known in the art. The SS7 network 212 is communicativelycoupled to a service control point (SCP) 224. Since the SS7 telephonyprotocol and the operation of the SCP 224 are known in the art, only atruncated discussion of SS7 network 212 and the SCP 224 is provided whenappropriate.

So far, with the exception of the callee client 202, the componentsdiscussed above with reference to FIG. 2 are standard networkcomponents. In various embodiments, the standard components aresubstantially unmodified. In this regard, throughout this disclosure,the term “standard” implies that the system, protocol, modality, orother component operates in accordance with known standards andprotocols, with little or no modification. Since these standard systems,protocols, modalities, and/or other components and their respectiveoperations are known to those having skill in the art, only cursorydescriptions of the standard systems, protocols, modalities, and/orcomponents are provided when relevant. Also, it is intended that“standard” encompass any future technologies that may be adopted as astandard or convention.

In a preferred embodiment, among others, the standard components arewholly unaltered, thereby maintaining the inherent stability androbustness of these components. Thus, for some embodiments, the callerCO 208, the callee CO 206, SS7 network 212, the SCP 224, the callertelephone 210, the AIN intranet 220, the messaging network intranet 228,the Internet gateway 222, the PSTN 204, the legacy voicemail repository230, and the LDAP database 232 operate without any modifications totheir communication protocols.

In addition to the standard components, some embodiments, among others,include an internet Internet call waiting (ICW) service packageapplication (SPA) 226, which is a corresponding server component to theICW client application 120 of FIG. 1. The ICW SPA 226 is communicativelycoupled to the SCP 224. The ICW SPA 226 is configured to receive variousrequests from the ICW client application 120. For example, when thecallee client 202 receives an incoming telephone call while a user islogged onto a dial-up Internet connection, the ICW client application120 prompts the user to dispose of the incoming telephone call byproviding one or more selections to the user. In response to the user'sinput, the ICW client application 120 issues one or more requests to theICW SPA 226. The ICW SPA 226 then issues instructions (or commands) tothe SCP 224, which correspond to the request by the ICW clientapplication 120. The SCP 224, in response to the instructions from theICW SPA 226, conveys the instructions to the callee CO 206 so that thecallee CO may dispose of the telephone call in an appropriate manner.Various embodiments of the call disposition are shown with reference toFIGS. 16 through 31.

The call dispositions are also handled by a network access server (NAS)218 in conjunction with the callee CO 206. In some embodiments, the NAS218 also provides session initiation protocol (SIP) server 218capabilities. Thus, FIG. 2 shows a single NAS/SIP server 218, ratherthan separating the two conceptually distinct server functions. However,for convenience, the NAS/SIP server 218 is referred to herein simply asthe NAS 218.

The NAS 218 includes an analog communications port that is coupled toboth the caller CO 208 and the callee CO 206. In some embodiments, theanalog communications port is configured as a voice port fortransmitting and receiving analog voice signals. The analogcommunications port permits the NAS 218 to receive analog voice signalsfrom, and transmit analog voice signals to, the caller CO 208 and thecallee CO 206. The NAS 218 is also communicatively coupled to the DMS214 through the Internet 216, thereby permitting communication betweenthe caller CO 208 and the DMS 214 through NAS 218 and the Internet 216.In addition to the analog voice communications port, the NAS 218 alsoincludes a digital voice communications port. The digital voicecommunications port is coupled to the Internet 216, thereby permittingdigital communications between the NAS 218 and other components that maybe connected to the Internet 216. Since the NAS 218 is amenable to bothdigital and analog communications, the NAS 218 includes bothdigital-to-analog (D/A) conversion capabilities as well asanalog-to-digital (A/D) conversion capabilities. Since various D/A andA/D conversion approaches are known in the art, further discussion ofD/A and A/D is omitted here.

In addition to the ICW SPA 226 and the NAS 218, the embodiment of FIG. 2further includes a digital messaging server (DMS)/SIP server 214. Forconvenience, the DMS/SIP server 214 is referred to herein simply as“DMS” 214. The DMS 214 is communicatively coupled to both the Internet216 and the legacy voicemail repository 230 (also referred to simply aslegacy VM). In one embodiment, among others, the DMS 214 is coupled tothe legacy VM 230 through the messaging network intranet 228.

The DMS 214, in some embodiments, among others, is configured togenerate a temporary digital mailbox, which provides a convenientholding space for digital messages as they are being conveyed from onecommunication system to another communication system. In a preferredembodiment, among others, the DMS 214 is configured to generate atemporary digital voicemail store that stores a digital voicemailmessage for further processing.

For those embodiments in which the DMS 214 generates a digital voicemailstore, a mechanism exists for correlating a callee's telephone numberand the callee's Internet address. Thus, when a user's Internetconnection prematurely disconnects prior to conveying the digitalvoicemail message to the callee client 202, it is possible that a newInternet address is assigned to the callee when the callee reconnects tothe Internet. Thus, it is possible that a particular digital voicemailmessage may be associated with a constantly-changing Internet address.As one can see, this becomes problematic when the digital voicemailmessage is to be delivered to a particular callee client 202 over theInternet 216, and the Internet address of the callee client 202 may varyover time.

In order to remedy this problem, when a digital voicemail message isstored in the temporary digital voicemail store, that digital voicemailmessage should be correlated to a stationary or non-varying reference.In a preferred embodiment, among others, that non-varying reference maybe a user's 10-digit telephone number. Since the user's 10-digittelephone number will be constant regardless of the Internet addressfrom which the user logs in, by correlating the digital voicemailmessage to the user's 10-digit telephone number, that digital voicemailmessage can be delivered to the user's callee client 202 regardless ofhow often the Internet address may change.

Thus, in operation, the DMS 214 receives a digital voicemail messagethat is directed to a particular recipient. Substantially synchronously,the DMS 214 creates a digital voicemail store to store the digitalvoicemail message. The 10-digit telephone number (or other non-varyinginformation) is incorporated into the digital voicemail store toidentify the digital voicemail store as belonging to the recipient.

Once the digital voicemail message has been downloaded to the calleeclient, as described, for example, in FIG. 26, the digital voicemailstore may be destroyed or deleted in order to free up storage space onthe DMS 214. In other words, the digital voicemail store, in someembodiments, appear and disappear as needed, thereby conserving storagespace at the server. This type of appearing/disappearing temporarydigital voicemail store provides a streamlined approach to conveyingmessages from one communication system to another communication system.

The DMS 214, in conjunction with the NAS 218, converts signals (e.g.,messages, commands, etc.) from one communication protocol to anothercommunication protocol. For example, the DMS 214 and the NAS 218 can beconfigured to convert analog signals, which originate from the PSTN 204,to digital signals, which are conveyed to various Internet-compatiblesystems. In one specific example, the NAS 218 may receive an analogvoice signal from the caller CO 208 and digitize the analog voicesignal. The digitized signal may then be conveyed to the DMS 214 with anindication that the digitized signal originated from the caller CO 208.The DMS 214 may receive the digitized signal from the NAS 218 and, uponreceiving the signal and the appropriate indication of origin, convertthe digitized signal into various Internet-compatible data, such as, forexample, an attachment to an email message, an attachment to an instantmessaging (IM) message, a digital voice stream using voice-over-Internetprotocol (VoIP), or a variety of other Internet-compatible data streams.If the digitized signal is converted to VoIP data stream, then the VoIPdata stream can subsequently be stored in a digital voicemail storeand/or transmitted in near real-time over the Internet 216. If thedigitized signal is attached to an email message, then the email messagecan subsequently be transmitted to an email recipient. Similarly, if thedigitized signal can be transmitted over IM, in accordance with known IMprotocols. FIGS. 16 through 31 show embodiments that employ Internetcall waiting (ICW). Thus, FIGS. 16 through 31 shows an example ofintegration between PSTN-telephony-based protocols and known ICWprotocols.

FIGS. 3 through 7 are flowcharts showing an embodiment of a process forsetting up a user interface at the computer of FIG. 1, while FIGS. 8through 15 are diagrams showing embodiments of user interfaces that canbe presented to a user during the setup process of FIGS. 3 through 7.The user interface (not shown) provides an interface for accessingmultiple communication modalities. In some embodiments, the multiplecommunication modalities can be accessed substantially synchronously.The embodiment of FIGS. 3 through 15 provide a streamlined approach tosetting up the ICW client application 120 with very little user input.In other words, the setup process is mostly automated, thereby reducingpotential user error.

As shown in FIG. 3, upon loading installation (or setup) software forICW onto a user's computer (or the callee client 202), the ICW setupsoftware is launched (302). Upon launching (302) the ICW setup software,a message is displayed (304) to the user to indicate that the systemsettings are being checked. The indication may appear similar to thedisplay shown in FIG. 8.

Upon displaying (304) the message, the callee client 202 determines(306) whether or not the modem line attached to the callee client 202 isbeing used. If the callee client 202 determines (306) that the modemline (i.e., the PSTN telephone line connected to the modem) is beingused, then the callee client 202 displays (308) an error messageindicating that the modem line is in use. That error message 1002 mayappear similar to that shown in FIG. 10, which requests the user toacknowledge the error message. The callee client 202 waits for a userinput and, in response to receiving (309) the user input, displays (310)an exit confirmation screen 902 similar to that shown in FIG. 9. Theexit confirmation screen 902 provides a selection 904 to exit and, also,a selection 906 to not exit. When the user provides a selection, thecallee client 202 receives (312) the selection and determines (314)whether or not the user has chosen to exit the setup process. If theuser has chosen to exit the setup process, then the setup process ends.If, however, the user has chosen not to exit the setup process (e.g.,the modem line has been relinquished and the user wishes to continue thesetup), then the callee client 202 again displays (304) the messageindicating that system settings are being checked, and the processrepeats itself.

If the callee client 202 determines (306) that the modem line is not inuse, then the callee client 202 further determines (316) whether or nota termination attempt trigger (TAT) for ICW is provisioned on the modemline. If the callee client 202 determines (316) that the TAT for ICW isnot provisioned on the modem line, then the callee client 202 displays(318) an error message indicating that ICW is not provisioned on themodem line. In some embodiments, the error message 1102 may be similarto that shown in FIG. 11. Upon displaying (318) the error message, theprocess ends. If the callee client 202 determines (316) that the modemline is provisioned with the TAT for ICW, then the process continues toFIG. 4.

As shown in FIG. 4, the callee client 202 further determines (402)whether or not call waiting is available on the modem line. If thecallee client 202 determines (402) that call waiting is available on themodem line, then the callee client 202 stores (404) information, whichreflects that call waiting is available on the modem line. Thisinformation is later used when setting up the dial string for dial-upaccess to various Internet service providers (ISPs).

If the callee client 202, however, determines (402) that call waiting isnot available on the modem line, then the callee client 202 stores (404)information, which reflects that call waiting is not available on themodem line. This information is later used when setting up the dialstring for dial-up access to various Internet service providers (ISPs).Then the callee client 202 further determines (406) whether or not dialaccess is configured on the modem line. In other words, the calleeclient 202 determines (406) whether or not the user has provided dial-upinformation for one or more ISPs. This is done, in some embodiments, byaccessing registry information on the callee client 202, which isindicative of the various system settings for the callee client 202.Upon accessing the registry settings, if the callee client 202determines (406) that no dial-up information has been provided, then thecallee client 202 stores (408) information indicating that no dialaccess is configured. This information is subsequently used to providean interface for the user to input dial-up information and for updatingthe registry.

If the callee client 202 determines (406) that dial access isconfigured, then the callee client 202 further determines (410) whethermore than one dial access number is available. More than one dial accessnumber may be available if the user is a subscriber to more than oneISP. If the callee client 202 determines (410) that more than one dialaccess number is available, then that information is stored (414).Conversely, if the callee client 202 determines (410) that only one dialaccess number is available, then that information is stored (412). Uponstoring (412 or 414) the appropriate information, the process continuesto FIG. 5.

As shown in FIG. 5, an opening page 1202, similar to that shown in FIG.12, is displayed (502) to the user at the callee client 202. In someembodiments, the opening page 1202 includes an option 1206 to cancel thesetup process and, also, an option 1204 to continue the setup process.When the user selects one of the options, the callee client 202 receives(504) the user input and determines (506) whether or not the setupprocess should continue. If the callee client 202 determines (506) thatthe setup process should not continue, then the callee client 202prompts the user to confirm the cancellation and determines (508)whether or not to exit the setup process. The prompt may be provided ata user interface 902 similar to that shown in FIG. 9. If the terminationof the setup process has been confirmed, then the setup process ends.However, if the termination of the setup process has not been confirmed,then the callee client 202 displays (502) the opening page 1202, and theprocess repeats from the displaying (502) of the opening page.

If the callee client 202 determines (506) that the setup process shouldcontinue, then an end-user license agreement (EULA) 1302, similar tothat shown in FIG. 13, is displayed (510) to the user. The EULA 1302provides a selection 1304 to either accept the terms of the EULA 1302 ordecline the terms of the EULA 1302. When the user provides a selection,the callee client 202 receives (512) the selection and determines (514),from the selection, whether or not the user has accepted the terms ofthe EULA 1302.

If the user has not accepted the terms of the EULA 1302, then a noticeis displayed (516) to the user, which indicates that the user mustaccept the terms of the EULA 1302 in order to install the product.Thereafter, the callee client 202 receives (518) input, which indicateswhether or not the user wishes to continue the setup process. Inresponse to the user input, the callee client 202 determines (520)whether or not the process should continue. If the callee client 202determines that the process should continue, then the EULA 1302 is,again, displayed (510) to the user, and the process continues from thedisplaying (510) of the EULA 1302. If the callee client 202 determines(520) that the user has chosen to exit the setup, then the callee client202 displays (522) the exit confirmation screen 902 and, again, receives(524) a user's selection. Thereafter, the callee client 202 determines(526) whether or not the user has confirmed the termination of the setupprocess. If the user has confirmed the termination of the setup process,then the setup process ends. If, however, the user has not confirmed thetermination of the setup process, then the EULA 1302 is, again,displayed (510) to the user, and the process continues from thedisplaying (510) of the EULA 1302.

When the EULA 1302 has been displayed (510) to the user, and calleeclient 202 determines (514) that the user has accepted the terms of theEULA 1302, then the process continues to FIG. 6. As shown in FIG. 6, thecallee client 202 displays (602) an input screen 1402 forcall-forwarding telephone numbers, similar to that shown in FIG. 14. Asshown in FIG. 14, the input screen 1402 includes input areas 1404 a . .. 1404 e for names and, also, corresponding input areas 1406 a . . .1406 e for telephone numbers that correspond to the names.

When the user provides those numbers, the callee client 202 receives(604) the call-forwarding telephone numbers and stores (606) thenumbers. Thereafter, the callee client 202 determines (608) whether ornot the stored information from FIG. 4 reflects that dial access hasbeen provisioned. If the stored information reflects that no dial accessnumbers are available, then the callee client 202 queries (610) the userfor one or more dial access numbers. When the user provides the dialaccess number(s), the callee client 202 receives (612) those numbers,and the process continues to FIG. 7. If the stored information reflectsthat one or more dial access numbers are available, then the processcontinues directly to FIG. 7.

As shown in FIG. 7, the callee client 202 determines (702) whether ornot the stored in formation from FIG. 4 reflects that only one dialaccess number is available. If the information reflects that only onedial access number is available, then the callee client furtherdetermines (704) whether the stored information from FIG. 4 reflectsthat call waiting is available on the modem line. If call waiting isavailable on that line, then a duplicate dial string is provisioned(706) with both ICW and call-waiting-cancellation feature codes.Thereafter, a message 1502, similar to that shown in FIG. 15, isdisplayed (716), which indicates that the setup process is complete, andthe ICW client application 120 is then launched (718) at the calleeclient 202. Once the ICW client is launched (718) the process continuesto FIG. 16.

If the information reflects that only one dial access number isavailable and call waiting is not available on the modem line, then aduplicate dial string is provisioned (708) with only the ICW featurecode. Thereafter, a message 1502, similar to that shown in FIG. 15, isdisplayed (716), which indicates that the setup process is complete, andthe ICW client application 120 is then launched (718) at the calleeclient 202. Once the ICW client is launched (718) the process continuesto FIG. 16.

If the information reflects that more than one dial access number isavailable, then the callee client further determines (710) whether thestored information from FIG. 4 reflects that call waiting is availableon the modem line. If call waiting is available on that line, thenduplicate dial strings for all of the stored numbers are provisioned(712) with both ICW and call-waiting-cancellation feature codes.Thereafter, a message 1502, similar to that shown in FIG. 15, isdisplayed (716), which indicates that the setup process is complete, andthe ICW client application 120 is then launched (718) at the calleeclient 202. Once the ICW client is launched (718) the process continuesto FIG. 16.

If the information reflects that more than one dial access number isavailable and call waiting is not available on the modem line, thenduplicate dial strings for all of the stored numbers are provisioned(714) with only the ICW feature code. Thereafter, a message 1502,similar to that shown in FIG. 15, is displayed (716), which indicatesthat the setup process is complete, and the ICW client application 120is then launched (718) at the callee client 202. Once the ICW client islaunched (718) the process continues to FIG. 16.

FIGS. 16 and 17 are data flow diagrams showing one embodiment, amongothers, of the flow of data between the various system components ofFIG. 2 for Internet call waiting (ICW), while FIGS. 29 through 31 arediagrams showing embodiments of user interfaces that can be presented toa user during the process shown in FIGS. 18 through 28. Specifically,FIG. 16 is a data flow diagram showing a connection to the Internet froma callee client 202 with the ICW client application 120 installed, andFIGS. 17 and 18 are data flow diagrams showing ICW processes uponreceiving an incoming telephone call.

As shown in FIG. 16, upon launching the ICW client application 120, thecallee client 202 conveys (1602) the dial string with one or morefeature codes to the callee central office (CO) 204. The callee CO 204receives (1604) the dial string with the feature code(s) and fires(1606) a termination attempt trigger (TAT) wakeup for Internet callwaiting (ICW) to the advanced intelligent network (AIN) 220.Additionally, the callee CO 208 establishes (1608) a connection with thedigital communication port on the network access server (NAS) 218. Insome embodiments, the digital communication port is configured as a dataport for receiving and transmitting digital data. The NAS 218subsequently establishes (1610) a connection to the Internet 216. Thus,at the end of FIG. 16, a user has established a dial-up connection tothe Internet. Additionally, at the end of FIG. 16, TAT for ICW has beenactivated.

It should be appreciated, after the ICW client application 120 has beenproperly set up and configured, that for some embodiments, the ICWclient application 120 may be launched automatically during startupwithout additional user intervention. In other embodiments, the ICWclient application 120 may be launched manually in response to userinput.

When a caller places a telephone call to the callee (from either apublic switched telephone network (PSTN) telephone or a cellulartelephone), that call is ultimately routed to the callee CO 204 throughknown mechanisms. As shown in FIG. 17, the caller CO 208 receives (1702)the dialed number of the callee from the caller and conveys (1704) thedialed number to the callee CO 204. The callee CO 204 receives (1706)the dialed number and determines (1708) whether a TAT for ICW is presenton the callee line. If the TAT for ICW is not present, then the call isconnected (1710) and the process ends. If, however, the TAT for ICW ispresent, then the callee CO 204 queries (1712) the AIN 220 with thedialed telephone number, and the process continues to FIG. 18.

As shown in FIG. 18, the AIN 220 conveys (1802) the caller informationto the callee client 202 through the callee CO 204. The callee client202 receives (1804) the caller information and displays (1808) thecaller information at a caller information user interface 2902, such asthat shown in FIG. 29. As shown in FIG. 29, in some embodiments, thecaller information user interface 2902 includes the caller's name 2904and the caller's telephone number 2906. The callee client 202 also sets(1806) a timer, which tracks the amount of time that elapses from thereceiving (1804) of the caller information. In addition to the callerinformation, the callee client 202 provides (1810) call dispositionoptions to the callee through a call disposition user interface 3002,such as that shown in FIG. 30. As shown in FIG. 30, the call dispositionuser interface 3002 includes the caller name 3004 and the caller number3006. Additionally, the call disposition user interface 3002 includescall disposition options, such as, for example, options to answer thecall 3014 (hereinafter “the answer option”), send the call to anothernumber 3016 (hereinafter “the forward option”), request the caller tohold 3018 (hereinafter “the hold option”), or direct the telephone callto voicemail 3020 (hereinafter “the voicemail option”). Also, the calldisposition user interface 3002 includes additional options such as, forexample, an option to view a call log 3008, an option to manage the ICWclient application 3010, and an option to view a help screen 3012.

When a user selects one of the call disposition options 3014, 3016,3018, 3020, the callee client 202 receives the user's selection. If theuser has selected the hold option 3018, then the process continues toFIG. 19. If the user has selected the voicemail option 3020, then theprocess continues to FIG. 20. If the user has selected the forwardoption 3016, then the process continues to FIG. 25. If the user hasselected the answer option 3014, then the process continues to FIG. 27.

FIGS. 19, 20 through 24, and 26 are data flow diagrams showing oneembodiment, among others, of the flow of data between the various systemcomponents of FIG. 2 when a callee places a caller on hold, as shown inFIG. 18. As shown in FIG. 19, the callee client 202 receives (1902) theinput to hold the call from the user. Upon receiving (1902) the input tohold the call, the callee client 202 sets (1904) a hold timer anddisplays (1906) a countdown that corresponds to the elapsing of time onthe hold timer. In some embodiments, among others, the display may be auser countdown user interface 3102, such as that shown in FIG. 31. Asshown in FIG. 31, the countdown user interface 3102 displays a callername 3104 and a caller number 3106. Additionally, the countdown userinterface 3102 displays a countdown timer 3118 that indicates the amountof time that a user has to answer the held telephone call before theheld telephone call expires. The countdown user interface 3102 alsoincludes a call answer selection 3114 that allows the callee to answerthe held telephone call any time before the countdown timer 3118expires. The countdown user interface 3102 can also include additionaloptions such as, for example, an option to view a call log 3108, anoption to manage the ICW client application 3110, and an option to viewa help screen 3112.

Once the hold timer is set (1904) and the countdown is displayed (1906),the callee client 202 issues (1908) a request to the AIN 220 to hold theincoming telephone call for a predefined time interval. In someembodiments, the predefined time interval may be 150 seconds. It should,however, be appreciated that the predefined time interval may beadjusted, as desired. The AIN 220 receives (1910) the request andgenerates (1912) a message requesting the caller to hold. That messageis, preferably, an audio message that is played in near real time to thecaller through the PSTN 204. Thus, in operation, the message is conveyed(1914) to the caller CO 208 through the callee CO 204. The caller CO 208receives (1916) the message and relays (1918) the message to the callerat the caller telephone 210. As the caller is holding, if the userselects the call answer selection 3114, then the process continues toFIG. 27. Alternatively, if the hold timer expires, then the processcontinues to FIG. 20.

As shown in FIG. 20, when the hold timer expires (or when the calleeclient 202 receives input to send the call to voicemail), the calleeclient 202 sets (2004) a polling clock. Upon setting the polling clock,the callee client 202 issues (2006) a request the AIN 220 to send theheld call to voicemail. The AIN 220 receives (2008) the request andissues (2010) instructions to the callee CO 204 to send the call to NAS218. The callee CO 204 receives (2012) the instructions and releases(2014) the call. Substantially synchronous with the releasing (2014) ofthe call, the callee CO 204 facilitates (2016) the establishing of aconnection between the caller CO 204 and the analog voice communicationport of the NAS 218. Specifically, the callee CO 204 dials the analogvoice port of the NAS 218, relays the connection to the caller CO 208through a switch-hook-flash, as is known in the art, and disconnectsafter establishing the connection between the NAS 218 and the caller CO208. The process then continues to FIG. 21.

As shown in FIG. 21, upon establishing (2016) a connection with theanalog voice communication port, the NAS 218 further establishes (2102)a session initiation protocol (SIP) session with the digital messagingserver (DMS) 214 over the Internet 216. Since SIP is known by thosehaving skill in the art, further discussion of the specifics of SIP isomitted here. Upon establishing (2102) the SIP session with the DMS 214,the NAS generates (2104) an indication of the call connection. Thisindication is conveyed (2106) to the DMS 214 over the Internet 216. TheDMS 214 receives (2108) the indication and generates (2110) a prompt tothe caller to “leave a message.” That prompt is conveyed (2112) to thecaller CO 208 over the Internet 216 and through the NAS 218. The callerCO 208 receives (2114) the prompt and conveys (2116) the prompt to thecaller. In one embodiment, among others, the prompt to the caller isplayed in real time over the Internet 216 and the PSTN 204. In someembodiments, the prompt is generated as digital data, conveyed from theDMS 214 to the NAS 218 as digital data, converted to analog signals bythe NAS 218, and conveyed from the NAS 218 to the caller CO 208 asanalog signals. Once the prompt is played to the caller, the processcontinues in FIG. 22.

As shown in FIG. 22, in response to the prompt from the AIN 220, thecaller records a message for the callee. In operation, the caller CO 208receives (2202) the analog voice stream from the caller and conveys(2204) the analog voice stream to the analog voice communication port ofthe NAS 218. The NAS 218 receives (2206) the analog voice stream anddigitizes (2208) the analog voice stream. The digitized voice stream isconveyed (2210) from the digital communication port of the NAS 218 tothe DMS 214 via the Internet 216. The DMS 214 receives (2212) thedigitized voice stream and stores (2214) the digitized voice stream as adigital voicemail message. The process continues in FIG. 23.

As shown in FIG. 23, upon storing (2214) the digitized voice stream, theDMS 214 queries the lightweight directory access protocol (LDAP)database 232 to determine whether the callee is a subscriber to a legacyvoicemail system. In operation, the querying process may be seen asbeginning with a generating (2302) of a query for callee information.The DMS 214 conveys (2304) the query to the lightweight directory accessprotocol (LDAP) database 232. The LDAP database 232 receives (2306) thequery. It is then determined (2308) whether or not the callee is asubscriber to a legacy voicemail system. In other words, it isdetermined whether or not the callee has a legacy voicemail repository.If the callee does not have a legacy voicemail repository, then theprocess ends. If, however, the callee has a legacy voicemail repository,then the process continues to FIG. 24.

As shown in FIG. 24, the callee information is returned (2402) from theLDAP database 232 to the DMS 214. The DMS 214 receives (2404) the calleeinformation and converts (2406) the digital voicemail message into ananalog voicemail message using voice profile for Internet mail (VPIM).Since VPIM is described in RFC 2421, RFC 2422, RFC 2423, and RFC 2424,published by the Internet Engineering Task Force (IETF), furtherdiscussion of VPIM is omitted here. However, it should be appreciatedthat the digital voicemail message can also be converted into an analogvoicemail message using other proprietary and/or non-proprietarytechniques.

The DMS 214 conveys (2408) the analog voicemail message to the legacyvoicemail repository 230. The legacy voicemail repository 230 receives(2410) the analog voicemail message and stores (2412) the analogvoicemail message. As shown in FIGS. 21 through 24, the voicemailmessage from the caller is stored at both the DMS 214, in digitalformat, and at the legacy voicemail repository 230, in accordance withthe protocols of the legacy voicemail system. Specifically, in theembodiment of FIGS. 21 through 24, both the digital and analog voicemailmessages are stored substantially synchronously because the NAS performsa near-real time digital-to-analog and analog-to-digital conversion.

Once the analog voicemail message is stored at the legacy voicemailrepository, and the digital voicemail message is stored at the DMS 214,the voicemail messages can be retrieved. FIG. 26 shows an embodiment inwhich the stored digital voicemail message in the DMS 214 is retrievedby the callee client 202. As shown in FIG. 26, when the polling clockfrom FIG. 20 expires, the callee client 202 polls (2602) the DMS 214,via the Internet 216, for new digital voicemail messages. If the DMS 214has any new digital voicemail messages, then the DMS 214 sends (2604)those digital voicemail messages to the callee client 202 over theInternet 216. The callee client 202 receives (2606) the digitalvoicemail messages and issues (2608) an acknowledgement back to the DMS214 when the voicemail message is completely received (or downloaded).The DMS 214 receives (2610) the acknowledgement and, in response to theacknowledgement, expunges (2616) the digital voicemail message. Afterissuing (2608) the acknowledgement, the callee client 202 generates(2612) an alert to the user, thereby indicating the retrieval of a newdigital voicemail message. The callee client 202 then logs (2614) thenew voicemail message and, thereafter, the process terminates.

As shown in FIG. 27, the callee client 202 receives (2702) an input toanswer the call. Upon receiving (2702) the input, the callee client 202issues (2704) a request to the AIN 220 to answer the call. The AINreceives (2706) the request. Substantially synchronous with the issuing(2704) of the request to answer the telephone call, the callee client202 issues (2708) instructions to the callee CO 204 to disconnect thedial-up Internet session. The callee CO 204 receives (2710) theinstructions and, in response to the instructions, the dial-up Internetconnection is disconnected (2712). The process then continues to FIG.28.

As shown in FIG. 28, the AIN 220 issues (2802) instructions to thecallee CO 204 to release the call from the caller. The callee CO 204receives (2804) the instructions and releases (2806) the telephone call,thereby connecting the caller with the callee in accordance with knownmethods. Thereafter, the process terminates. Since the operation of thesystem in response to the user's selection to answer the telephone callis known in the art, further discussion of the operation of the calleeCO 204, the AIN 220, and the callee client 202 is omitted with referenceto FIGS. 27 and 28.

FIG. 25 is a data flow diagram showing one embodiment, among others, ofthe flow of data between the various system components of FIG. 2 when acallee forwards an incoming call from a caller to another telephonenumber, as shown in FIG. 18. As shown in FIG. 25, the callee client 202receives 2502 the input to forward a call and issues (2504) a request tothe AIN 220, through the callee CO 204. The request includes theforwarding number to which the telephone call should be forwarded. TheAIN 220 receives (2506) the request and issues (2508) instructions tothe callee CO 204 to forward the call to the forwarding number. Thecallee CO 204 receives (2510) the instructions and releases (2512) thecall to the forwarding number. Thereafter the process terminates. Sincethe call forwarding process of FIG. 25 is known in the art, furtherdiscussion of the call forwarding process is omitted here.

The logic components within various system components of FIG. 2 (e.g.,the callee client 202, the network access server (NAS)/sessioninitiation protocol (SIP) server 218, the digital messaging server (DMS)214, the Internet gateway 222, the lightweight directory access protocol(LDAP) database), the Internet call waiting (ICW) service packageapplication (SPA)) may be implemented in hardware, software, firmware,or a combination thereof. In the preferred embodiment(s), those logiccomponents are implemented in software or firmware that is stored in amemory and that is executed by a suitable instruction execution system.If implemented in hardware, as in an alternative embodiment, those logiccomponents can be implemented with any or a combination of the followingtechnologies, which are all well known in the art: a discrete logiccircuit(s) having logic gates for implementing logic functions upon datasignals, an application specific integrated circuit (ASIC) havingappropriate combinational logic gates, a programmable gate array(s)(PGA), a field programmable gate array (FPGA), etc.

Any process descriptions or blocks in flow charts should be understoodas representing modules, segments, or portions of code which include oneor more executable instructions for implementing specific logicalfunctions or steps in the process, and alternate implementations areincluded within the scope of the preferred embodiment of the presentinvention in which functions may be executed out of order from thatshown or discussed, including substantially concurrently or in reverseorder, depending on the functionality involved, as would be understoodby those reasonably skilled in the art of the present invention.

The Internet call waiting (ICW) application 120, which comprises anordered listing of executable instructions for implementing logicalfunctions, can be embodied in any computer-readable medium for use by orin connection with an instruction execution system, apparatus, ordevice, such as a computer-based system, processor-containing system, orother system that can fetch the instructions from the instructionexecution system, apparatus, or device and execute the instructions.

In the context of this document, a “computer-readable medium” can be anymeans that can contain, store, communicate, propagate, or transport theprogram for use by or in connection with the instruction executionsystem, apparatus, or device. The computer-readable medium can be, forexample but not limited to, an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system, apparatus, device,or propagation medium.

More specific examples (a nonexhaustive list) of the computer-readablemedium would include the following: an electrical connection(electronic) having one or more wires, a portable computer diskette(magnetic), a random access memory (RAM) (electronic), a read-onlymemory (ROM) (electronic), an erasable programmable read-only memory(EPROM or Flash memory) (electronic), an optical fiber (optical), and aportable compact disc read-only memory (CDROM) (optical). Note that thecomputer-readable medium could even be paper or another suitable mediumupon which the program is printed, as the program can be electronicallycaptured via, for instance, optical scanning of the paper or othermedium, then compiled, interpreted or otherwise processed in a suitablemanner if necessary, and then stored in a computer memory.

Although exemplary embodiments have been shown and described, it will beclear to those of ordinary skill in the art that a number of changes,modifications, or alterations to the invention as described may be made.For example, while the NAS 218 and the SIP server 218 are shown as asingle component, it should be appreciated that the functionality of theNAS 218 and the SIP server 218 may be separated into two distinctservers. Likewise, while the DMS 214 and the SIP server 214 are shown asa single component, it should be appreciated that the functionality ofthe DMS 214 and the SIP server 214 may be separated into two distinctcomponents. Similarly, while the NAS/SIP server 218 and the DMS/SIP 214are shown, conceptually, as separate distributed components in FIG. 2,it should be appreciated that the NAS/SIP server 218 and the DMS/SIP 214may be housed at the same physical location. Hence, the same piece ofhardware may perform the functions of both the NAS 218 and the DMS 214.In other words, it should be appreciated that the various components ofFIG. 2 are shown as conceptually separate components, rather than asphysically separate components.

Also, while the caller CO 208 and the callee CO 206 are conceptuallyshown as two separate entities, it should be appreciated that, dependingon the physical location of both the caller and the callee, the callerCO 208 and the callee CO 206 may be one in the same. Moreover, whilevarious servers (e.g., NAS/SIP server 218, DMS/SIP 214, etc.) are shownas being external to the Internet 216, it should be appreciated thatthese servers may be a component part of the Internet 216.

Additionally, while various embodiments are described with reference tospecific, standard communication modalities, such as, for example,email, instant messaging (IM), Internet call waiting (ICW), legacyvoicemail, public switched telephone network (PSTN) telephony, etc., itshould be appreciated that the disclosed embodiments are intended tomore clearly illustrate the operation of the systems and methods. Thus,the specifically enumerated communication systems are not intended asbeing limitations on the invention. In this regard, it should beappreciated that the present disclosure may be extended to cover othercommunication modalities, such as, for example, cellular telephony,satellite telephony, etc.

Similarly, the various known protocols, among others, associated withthe communication systems are generically referred to as standardcommunication protocols. Thus, it should be appreciated that a knownemail protocol, such as, for example, post office protocol 3 (POP3), isan example of a standard communication protocol. Likewise, it should beappreciated that a known PSTN protocol is another example of a standardcommunication protocol. Similarly, it should be appreciated that otherInternet-based protocols, such as, for example, voice-over Internetprotocol (VoIP) and session initiation protocol (SIP), are yet otherexamples of standard communication protocols.

These, and other changes, modifications, and alterations, shouldtherefore be seen as within the scope of the disclosure.

1. A method for storing messages in a plurality of communicationsmodalities, comprising: receiving a message in a first protocol;converting the message from the first protocol to the second protocol;storing the converted message in a temporary mailbox created for storingmessages of the second protocol; sending the converted message to astorage component associated with the second protocol; and destroyingthe temporary mailbox.
 2. The method of claim 1, wherein the message ina first protocol includes an analog voice signal.
 3. The method of claim1, wherein converting the message from the first protocol to the secondprotocol includes converting the message into a digital format.
 4. Themethod of claim 1, wherein converting the message from the firstprotocol to the second protocol includes converting the message into anemail format.
 5. The method of claim 1, wherein converting the messagefrom the first protocol to the second protocol includes converting themessage into an Instant Messaging format.
 6. The method of claim 1,wherein receiving a message in a first protocol includes receiving ananalog voicemail message from a legacy voicemail server.
 7. The methodof claim 1, wherein a storage component associated with the secondprotocol includes a digital voicemail server.
 8. A system for storingmessages in a plurality of communications modalities, comprising: areceiving component configured to receive a message in a first protocol;a converting component configured to convert the message from the firstprotocol to the second protocol; a storing component configured to storethe converted message in a temporary mailbox created for storingmessages of the second protocol; a sending component configured to sendthe converted message to a storage component associated with the secondprotocol; and a destroying component configured to destroy the temporarymailbox.
 9. The system of claim 8, wherein the message in a firstprotocol includes an analog voice signal.
 10. The system of claim 8,wherein converting the message from the first protocol to the secondprotocol includes converting the message into a digital format.
 11. Thesystem of claim 8, wherein converting the message from the firstprotocol to the second protocol includes converting the message into anemail format.
 12. The system of claim 8, wherein converting the messagefrom the first protocol to the second protocol includes converting themessage into an Instant Messaging format.
 13. The system of claim 8,wherein receiving a message in a first protocol includes receiving ananalog voicemail message from a legacy voicemail server.
 14. The systemof claim 8, wherein a storage component associated with the secondprotocol includes a digital voicemail server.
 15. A computer readablemedium for storing messages in a plurality of communications modalities,the computer readable medium comprising instructions that, when executedon a computer, cause the computer to: receive a message in a firstprotocol; convert the message from the first protocol to the secondprotocol; store the converted message in a temporary mailbox created forstoring messages of the second protocol; send the converted message to astorage component associated with the second protocol; and destroy thetemporary mailbox.
 16. The computer readable medium of claim 15, whereinthe message in a first protocol includes an analog voice signal.
 17. Thecomputer readable medium of claim 15, wherein converting the messagefrom the first protocol to the second protocol includes converting themessage into a digital format.
 18. The computer readable medium of claim15, wherein converting the message from the first protocol to the secondprotocol includes converting the message into an email format.
 19. Thecomputer readable medium of claim 15, wherein converting the messagefrom the first protocol to the second protocol includes converting themessage into an Instant Messaging format.
 20. The computer readablemedium of claim 15, wherein receiving a message in a first protocolincludes receiving an analog voicemail message from a legacy voicemailserver.